Fitness System with Smart Television Interface

ABSTRACT

The disclosure relates to improvements in fitness device displays. In some aspects, the techniques described herein relate to a method including: initiating, by a fitness device, a short-range wireless connection with a display device; adjusting, by the fitness device, at least one operating parameter; broadcasting, by the fitness device, an identifier of the fitness device to the display device while the at least one operating parameter is being adjusted; and establishing, by the fitness device, a connection with the display device after a user of the fitness device selects the identifier when displayed on the display device.

BACKGROUND

Currently, many fitness devices provide visual displays of information. Some devices include a graphical display (e.g., flat-panel display and computing device) that is physically connected to the mechanical and sensor elements of the fitness device. Other fitness devices utilize mobile phones or tablets to receive data from fitness devices. Currently, however, no fitness device leverages existing display infrastructure within an environment (e.g., smart televisions).

BRIEF SUMMARY

The example embodiments relate to improvements in fitness devices. Specifically, the example embodiments describe a short-range wireless connection used between a fitness device and a display device such as a smart television. The example embodiments describe techniques for enabling such short-range wireless connection despite a non-standard control interface (e.g., smart television remote) and a fitness device that has less than full-featured display capabilities (e.g., a lack of a graphical display or touchscreen).

In some aspects, the techniques described herein relate to a method including: initiating, by a fitness device, a short-range wireless connection with a display device; adjusting, by the fitness device, at least one operating parameter; broadcasting, by the fitness device, an identifier of the fitness device to the display device while the at least one operating parameter is being adjusted; and establishing, by the fitness device, a connection with the display device after a user of the fitness device selects the identifier when displayed on the display device.

In some aspects, the techniques described herein relate to a method wherein initiating the short-range wireless connection includes initiating a Bluetooth pairing process by setting the fitness device in a discoverable.

In some aspects, the techniques described herein relate to a method, wherein initiating the short-range wireless connection includes flashing an indicator on the fitness device.

In some aspects, the techniques described herein relate to a method, wherein the fitness device includes an exercise bike and wherein adjusting the at least one operating parameter includes adjusting a resistance or incline setting of the exercise bike.

In some aspects, the techniques described herein relate to a method, wherein the fitness device includes an exercise bike and wherein adjusting the at least one operating parameter includes pedaling the exercise bike.

In some aspects, the techniques described herein relate to a method, further including terminating a connection process when a user stops adjusting the at least one operating parameter before establishing a connection with the display device.

In some aspects, the techniques described herein relate to a method, further including: receiving, at the fitness device, an indication that a fitness activity has started on the display device; and transmitting, by the fitness device, sensor data to the display device, the sensor data causing the display device to update a graphical user interface displayed on the display device.

In some aspects, the techniques described herein relate to a fitness device, including a processor, the processor configured to: initiate a short-range wireless connection with a display device; adjust at least one operating parameter; broadcast an identifier of the fitness device to the display device while the at least one operating parameter is being adjusted; and establish a connection with the display device after a user of the fitness device selects the identifier when displayed on the display device.

In some aspects, the techniques described herein relate to a fitness device, wherein initiating the short-range wireless connection includes initiating a Bluetooth pairing process by setting the fitness device in a discoverable.

In some aspects, the techniques described herein relate to a fitness device, further including an indicator, and wherein initiating the short-range wireless connection includes flashing the indicator.

In some aspects, the techniques described herein relate to a fitness device, wherein the fitness device includes an exercise bike and wherein adjusting the at least one operating parameter includes adjusting a resistance or incline setting of the exercise bike.

In some aspects, the techniques described herein relate to a fitness device, wherein the fitness device includes an exercise bike and wherein adjusting the at least one operating parameter includes pedaling the exercise bike.

In some aspects, the techniques described herein relate to a fitness device, the processor further configured for terminating a connection process when a user stops adjusting the at least one operating parameter before establishing a connection with the display device.

In some aspects, the techniques described herein relate to a fitness device, the processor further configured to: receive an indication that a fitness activity has started on the display device; and transmit sensor data to the display device, the sensor data causing the display device to update a graphical user interface displayed on the display device.

In some aspects, the techniques described herein relate to a non-transitory computer-readable storage medium for tangibly storing computer program instructions capable of being executed by a computer processor, the computer program instructions defining steps of initiating, by a fitness device, a short-range wireless connection with a display device; adjusting, by the fitness device, at least one operating parameter; broadcasting, by the fitness device, an identifier of the fitness device to the display device while the at least one operating parameter is being adjusted; and establishing, by the fitness device, a connection with the display device after a user of the fitness device selects the identifier when displayed on the display device.

In some aspects, the techniques described herein relate to a non-transitory computer-readable storage medium, wherein initiating the short-range wireless connection includes initiating a Bluetooth pairing process by setting the fitness device in a discoverable.

In some aspects, the techniques described herein relate to a non-transitory computer-readable storage medium, wherein the fitness device includes an exercise bike and wherein adjusting the at least one operating parameter includes adjusting a resistance or incline setting of the exercise bike.

In some aspects, the techniques described herein relate to a non-transitory computer-readable storage medium, wherein the fitness device includes an exercise bike and wherein adjusting the at least one operating parameter includes pedaling the exercise bike.

In some aspects, the techniques described herein relate to a non-transitory computer-readable storage medium, further including terminating a connection process when a user stops adjusting the at least one operating parameter before establishing a connection with the display device.

In some aspects, the techniques described herein relate to a non-transitory computer-readable storage medium, further including: receiving, at the fitness device, an indication that a fitness activity has started on the display device; and transmitting, by the fitness device, sensor data to the display device, the sensor data causing the display device to update a graphical user interface displayed on the display device.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a fitness system according to some of the example embodiments.

FIG. 2 is a flow diagram illustrating a method for connecting a fitness device to a smart display according to some of the example embodiments.

FIG. 3 is a flow diagram illustrating a method for displaying performance data of a fitness device on a smart display according to some of the example embodiments.

FIGS. 4A through 4H are screen diagrams illustrating a fitness application running on a smart display according to some of the example embodiments.

FIG. 5 is a block diagram of a computing device according to some embodiments of the disclosure.

DETAILED DESCRIPTION

FIG. 1 is a block diagram of a fitness system according to some of the example embodiments.

In the illustrated embodiment, a system 100 includes a plurality of fitness devices (e.g., fitness device 102A, fitness device 102B, fitness device 102C, and fitness device 102D) that are communicatively coupled to a remote platform 108 via a network 106. In the illustrated embodiment, the fitness devices can include any equipment configured to monitor the activity performance of a user represented as operating parameters (e.g., revolutions per minute, power, stroke, etc.). Examples of fitness devices include but are not limited to spin bikes, stationary bikes, rowing machines, fitness mirrors, weightlifting apparatuses, and other types of fitness-related equipment. In general, any device capable of capturing an operating parameter may be used. Examples of operating parameters include power output or resistance for spin bikes, stroke rate and split time for rowing machines, calories burned, heart rate, etc. In some embodiments, fitness devices can include computing devices not specifically designed for fitness. For example, a smartwatch may comprise a fitness device and may record a current lap number (or distance) while a user is swimming.

In the illustrated embodiment, the fitness devices transmit and receive data via network 106. Network 106 can comprise a wide area network (WAN) such as the Internet. Network 106 can include a plurality of separate networks. In an embodiment, a remote platform 108 can comprise a server (or multiple servers) computing device and other computing devices configured to receive data from the fitness devices and provide data to the fitness devices. In some embodiments, the remote platform 108 can provide classes to the fitness devices. As used herein, a class refers to a combination of audio and video and a plurality of tracking routines and metadata to coordinate operating parameters among fitness devices. In brief, remote platform 108 can provide static data to the fitness devices to display class details. Upon selection of a given class, the remote platform 108 can transmit audiovisual content to the fitness devices to playback the class. The fitness devices can record and synchronize operating parameters with the audiovisual content. The fitness devices can then present metrics representing the activity of the user along with the audiovisual content. Further, in some scenarios, the fitness devices can transmit the operating parameters back to the remote platform 108. In some scenarios, remote platform 108 can aggregate operating parameters from multiple fitness devices and generate a data structure representing, for example, a leaderboard or other multi-player visualization. The remote platform 108 can then broadcast the multi-player visualization data to all fitness devices participating in the class to provide a multi-player experience to all users. Details of such interfaces are described herein and in commonly-owned applications bearing U.S. application Ser. Nos. 17/377,552 (filed Jul. 16, 2021) and 17/467,545 (filed Sep. 7, 2021).

In an embodiment, fitness devices can communicate directly with remote platform 108 via network 106. For example, fitness device 102D can send data to and receive data from remote platform 108. In such a scenario, fitness device 102D can include a network interface and/or display to enable the above-described scenario.

In other scenarios, a given fitness device can use an intermediate device to connect to network 106 and to remote platform 108. For example, fitness device 102C can be communicatively coupled to a mobile device 110 (e.g., mobile phone, tablet) to communicate with remote platform 108. As another example, fitness device 102A and fitness device 102B use a smart television 104A and smart television 104B, respectively, to communicate with remote platform 108. Details of connecting a fitness device with a smart television are described in more detail herein. In an embodiment, regardless of the method in which a given fitness device connects to network 106, all devices can be configured to transmit and receive data to support multi-player classes. As described above, the use of smart televisions re-uses existing display infrastructure and can provide a more immersive experience when using fitness devices. Further, the use of smart television displays can render the use of a display screen attached to an exercise device redundant and thus reduce the complexity and cost of such fitness devices. Further, smart television displays are generally significantly larger than a touchscreen to tablet devices on modern fitness devices. Thus, information can be presented in an easier-to-digest manner, which is critical during physical activity.

FIG. 2 is a flow diagram illustrating a method for connecting a fitness device to a smart display according to some of the example embodiments.

In step 202, method 200 can include powering on a fitness device. In some embodiments, the power on can include a hard restart, initial power on, soft reset, or any other type of operation that causes a processing element (and operating system) to initiate a boot process. In some embodiments, step 202 can be optional, and method 200 can be initiated manually (starting at step 204). For example, after powering on the fitness device, method 200 can be manually invoked when a user wishes to pair with a smart television, as described herein.

In step 204, method 200 can include operating an indicator.

In some embodiments, the indicator can comprise a light-emitting diode (LED) or another type of visual indicator. In other embodiments, the indicator can comprise an audible or haptic indicator. In some embodiments, multiple indicators can be used simultaneously. For example, an LED on an inward-facing forward portion of the fitness device and a haptic interface on a handlebar of the fitness device can be operated simultaneously.

In some embodiments, the indicator can be placed in one of three states during method 200. In an embodiment, these states include a ready to pair, paired, and inactive state. During the ready to pair, the indicator can signal that the fitness device is actively ready to pair with another device (e.g., a smart television). In an embodiment, in the ready to pair state, a visual indicator can flash or blink, a haptic interface can pulse, or an audible interface can emit a rhythmic pulse. During the paired state, the indicator can signal that the pairing was successful. In an embodiment, in the paired state, a visual indicator can remain steady, a haptic interface can vibrate continuously, or an audible interface can emit a continuous pulse. In some embodiments, the paired state can operate the indicator in the paired state for a fixed duration (e.g., two seconds) before moving to an inactive state. During the inactive state, the indicator can be disabled (e.g., unlit, non-moving, non-audible, etc.). In other words, during the inactive state, the indicator can be “off.”

Returning to step 204, method 200 can include transitioning the indicator to the ready to pair state. For example, during step 204, method 200 can include blinking a visual indicator. In some embodiments, the fitness device may not include any type of display device; thus, the use of an indicator provides feedback to the user that a pairing process is being executed. Although a dedicated indicator is described, in some embodiments, method 200 can re-use another similar type of device present on the fitness device.

In step 206, method 200 can determine if an operating parameter of the fitness device has changed or is adjusted by the user. If not, method 200 continues to operate the indicator in step 204. In some embodiments, method 200 can optionally provide a timeout such that if method 200 does not proceed to step 208 before a fixed timeout period, method 200 can prematurely end.

In some embodiments, the operating parameter comprises one measurable parameter of the fitness device that can be changed or adjusted based on user activity or input. In an embodiment, method 200 uses existing parameters recorded by the fitness device to signify that the pairing process should commence. For example, the operating parameter can comprise a change or adjustment in a resistance level of an exercise bike. As another example, the operating parameter can comprise a change or adjustment of an incline setting of a treadmill or similar device. As another example, the operating parameter can comprise a measured parameter such as the speed or power output of an exercise bike. In general, any operating parameter that requires user input to be changed or adjusted can be used. Further, in an embodiment, the operating parameter can comprise a pre-existing operating parameter of the fitness device to reduce the complexity of the pairing process. As one example, during pairing, a user can power on the fitness device (step 202) and view a blinking visual indicator (step 204). In response, the user may only be required to mount the exercise device and begin pedaling the device (step 206) to adjust the speed of the device. Thus, a user of a fitness device can initiate a pairing process without any manual input. Further, when pairing with a smart television, the use of remote-control interfaces can be cumbersome or challenging. Thus, the use of operating parameters allows for an easier and more accurate mechanism to trigger a pairing process.

In step 208, when method 200 determines that an operating parameter is changing, method 200 can activate a pairing process. In some embodiments, step 208 can comprise activating a short-range wireless networking pairing process. In some embodiments, step 208 can include a Bluetooth pairing process. In some embodiments, activating a Bluetooth pairing process can include setting the fitness device into a discoverable mode. In an embodiment, the fitness device includes a short-range wireless transceiver (e.g., Bluetooth transceiver). The fitness, in step 208, can set its mode to discoverable such that other devices that have similar short-range wireless transceivers can detect the fitness device transceiver. In some embodiments, as part of entering a discoverable mode, the fitness device can broadcast data regarding itself to other devices. In an embodiment, the fitness device can broadcast a serial number, model number, etc. Although Bluetooth is described, other types of wireless protocols may be used, such as IEEE 802.11 or similar such protocols.

In step 210, method 200 can include searching for active devices using a short-range wireless networking protocol such as Bluetooth. In some embodiments, step 210 (and step 212 and step 214) can be executed by the smart television. In some embodiments, step 210 can include operating the short-range wireless transceiver to detect any devices broadcasting their identity. In some embodiments, step 210 can comprise detecting a single fitness device broadcasting its identity. If method 200 does not detect any active fitness devices, method 200 can continue to execute step 208 until it does so. As with step 206, a timeout can be used to prematurely end method 200 if no active devices are identified. In some embodiments, method 200 can include terminating the connection process when a user stops adjusting the operating parameter before the connection is established.

In some embodiments, step 210 can comprise selecting a fitness device from multiple devices broadcasting their identity. For example, in an environment, multiple devices (including non-fitness devices) may be broadcasting their identities. As such, in step 210, method 200 can receive multiple device identities. In existing systems, a user would be required to select their device. However, such an operation is generally not preferable (and is difficult) with smart televisions, given the limited input control. As such, in some embodiments, method 200 can employ one or more heuristic rules to automatically select a device. For example, method 200 can filter any device having an identifier (e.g., serial number, model number, etc.) not matching an expected pattern. In many scenarios, such filtering will reduce the number of available devices to one since many home users only have one fitness device operational at a time.

In an alternative scenario, multiple fitness devices may be powered on and, possibly, broadcasting their identities when step 210 is executed. For example, a user's home gym may include a rowing machine and exercise bike that are being used during exercise. As such, in some scenarios, both fitness devices may be broadcasting their identities. Further, in some embodiments, the smart television may support both devices. As such, in some embodiments, method 200 may use an alternative means to identify an active device. In this scenario, step 206 can be modified to include a variable or adjusted operating parameter as part of the fitness device identifier. For example, a current resistance level can be appended to a serial number of the fitness device. In such a scenario, the operating parameter can be used to distinguish between active and unused devices. Thus, an active exercise bike can broadcast an identifier of “BIKE123-35” while an inactive exercise bike can broadcast an identifier of “BIKE456” (or “BIKE456-0,” indicating zero resistance). In this manner, the smart television can automatically select the active fitness device.

In step 212, method 200 can include displaying the active device identified in step 210. In an embodiment, method 200 can display the device identifier on the screen. In some embodiments, step 212 can comprise removing any concatenated data (e.g., operating parameters) prior to displaying the device identifier. In an embodiment, step 212 can be used to provide visual feedback to the user to confirm the pairing process. In some embodiments, method 200 can display the device identifier on a display screen of a smart television.

In step 214, method 200 can include establishing a connection with the fitness device. In some embodiments, step 214 can comprise establishing a connection using a short-range wireless protocol such as a Bluetooth protocol. In some embodiments, the connection then allows the fitness device to transmit operating parameters to the smart television. In some embodiments, the fitness device includes low-power electronics and operates to only transmit operating parameters (or derived metrics) to the smart television for display and synchronization with a remote platform (e.g., remote platform 108). Details of these transmissions are provided in FIG. 3 .

FIG. 3 is a flow diagram illustrating a method for displaying performance data of a fitness device on a smart display according to some of the example embodiments.

In step 302, method 300 can include displaying a user interface (UI) to the user via a smart television. Examples of UIs are provided in FIGS. 4A through 4H. In some embodiments, the ins displayed in step 302 can comprise static ins. In some embodiments, a static UI refers to a UI that provides selectable items but does not provide the audiovisual content of a class. Generally, a static UI will include menu items or similar content to allow a user to navigate and browse content provided by a remote platform. In an embodiment, a smart television can include an installed application that can generate the UIs. In some embodiments, the smart television is communicatively coupled to a remote platform via a network, as depicted in FIG. 1 . In some embodiments, the application on the smart television can issue network queries to the remote platform to load assets and other content to display in templates forming the application.

In step 304, method 300 can include determining if a selection is made in the currently displayed UI. In some embodiments, a user can make a selection using a remote control of the smart television or similar input device. In some embodiments, a user can direct a cursor or other pointer by moving the remote control relative to the display of the smart television.

In step 306, method 300 can include determining if the user has initiated an activity. As used herein, an activity includes any audiovisual content that can be synchronized with the operating parameters of a fitness device. For example, an activity can include an exercise class (e.g., a multi-player exercise class). As discussed above, in some embodiments, some UI screens include non-activity elements (e.g., menu items), and thus, in step 306, if method 300 determines that such a non-activity element is selected, method 300 can update the UI (step 308) to display a new screen (e.g., a new menu item). Method 300 can continue to operate step 302, step 304, and step 306 until the user selects an activity.

In step 310, method 300 can include loading an activity. In an embodiment, step 310 can include issuing a network request to a remote platform and receiving data representing the activity. For example, the remote platform can return an audiovisual stream to the user as well as data representing one or more other fitness devices performing the activity. In some embodiments, as part of step 310, method 300 can periodically receive updated data from the remote platform.

In step 312, method 300 can include displaying a pre-activity screen. In some embodiments, a pre-activity screen can include graphical elements presented before the start of an audiovisual stream. For example, the pre-activity screen can include metrics associated with a fitness device connected to a smart television. In some embodiments, these metrics can be dynamically updated as the user operates the fitness device. For example, cadence, distance, speed, power, resistance, calories, etc., can all be displayed on the pre-activity screen and updated as the user uses the fitness device before the activity begins. In some embodiments, the pre-activity screen can also include a placeholder leaderboard (e.g., including blank or empty slots until the activity starts) as well as a placeholder graphic.

In step 314, method 300 can include determining if the activity has started yet. In some embodiments, an activity is associated with a start time. Thus, in step 314, method 300 can include determining if a current time is equal to the start time. If not, method 300 can continue to execute step 312 until the activity starts.

In step 316, method 300 can include displaying an activity UI when the activity begins. In some embodiments, step 316 can further include playing back an audiovisual stream when the activity has started. In some embodiments, the activity UI can comprise an updated version of the pre-activity screen. For example, the placeholder leaderboard can be “filled in” with users close to the user in a pre-defined metric. In some embodiments, these users are continuously provided to the smart television by the remote platform, and the smart television application updates the activity UI in response to these data points. In some embodiments, an audiovisual display can include an instructor, pre-recorded video, or other graphical element displayed while the class is being played back.

In step 318, method 300 can determine if the activity is ongoing. If not, method 300 can end. In some embodiments, step 318 can include determining if the user of the fitness device has completed the activity. Alternatively, or in conjunction with the foregoing, step 318 can include determining if a user prematurely ends the activity.

In step 320, while the activity is ongoing, method 300 can include receiving operating parameters of the fitness device. In an embodiment, step 320 can include a smart television receiving a packet over a short-range wireless connection (e.g., Bluetooth). In some embodiments, the packet can include raw metrics recorded by sensors of the fitness device (e.g., resistance, speed, etc.). In some embodiments, the packet can include synthesized metrics (e.g., power output, calories burnt, etc.). In other embodiments, the smart television can compute the synthesized metrics based on the raw metrics.

In step 322, method 300 can include updating the activity UI.

In an embodiment, step 322 can include a smart television updating a metric display that displays the metrics of the user's fitness device. In this embodiment, this metric display displays the local performance of the fitness device during the class. Alternatively, or in conjunction with the foregoing, step 322 can further include the smart television transmitting the operating parameters to the remote platform. In some embodiments, the remote platform can aggregate data from all fitness devices performing the activity and broadcast leaderboard data. In response, in step 322, the smart television can receive the leaderboard data and update a leaderboard locally on the smart television.

As illustrated, method 300 can repeatedly execute step 320 and step 322 while the activity is ongoing. Method 300 can then end upon determining, in step 318, that the activity has ended or the user has prematurely exited the activity.

FIGS. 4A through 4H are screen diagrams illustrating a fitness application running on a smart display according to some of the example embodiments.

In FIG. 4A, a home screen 400A of a smart television is depicted. The home screen 400A includes various UI elements allowing the user to navigate the applications and settings of the smart television. For example, a set of controls is depicted, including a search control 408C that allows a user to search installed applications, stored media, and other files on the smart television. The set of controls can further include a profile control 408B that allows a user to update or change profile data (e.g., login data, name, etc.). The set of controls can further include a settings control 408A that allows a user to update the settings of the smart television.

The home screen 400A further includes icons or tiles that are selectable by the user. In response to the selection of the icons of tiles, the smart television will launch an associated application. The home screen 400A can include television station channels 402 that correspond to live television or live streaming media. The home screen 400A can also include media applications 406 that allow access to pre-recorded media content.

The home screen 400A further includes applications 404 that comprise computer program instructions capable of being executed by a computer processor of the smart television. In some embodiments, these computer program instructions can be tangibly stored in a non-transitory computer-readable storage media. One such application is fitness application 468. In the illustrated embodiment, a user can select the fitness application 468 using a remote control or other input device configured to operate with the smart television. In response, the smart television can launch the fitness app, as depicted in FIG. 4B.

FIG. 4B illustrates a fitness application screen 400B. In an embodiment, the fitness application screen 400B forms part of a fitness application installed on a smart television. In some embodiments, the fitness application can be installed via an app store or similar application installed on the smart television.

As illustrated, when the fitness application is first launched, the fitness application screen 400B includes a logo 410 and a set of profile icons, including profile icon 412A, profile icon 412B, profile icon 412C, and profile icon 412D. A user can select a profile icon to use the associated profile for later screens (in FIGS. 4C through 4H). The fitness application screen 400B can further include a new profile control 470 that allows a user to create a profile. Further, the fitness application screen 400B can include a login control 472 that allows a user to log in to an existing profile. Once a user logs in or creates a profile, the fitness application may cache the credentials for a predefined time period and allow the user to simply select a profile icon to authenticate.

In FIG. 4C, a pairing interface 400C of the fitness application is depicted. In some embodiments, the fitness application can display the pairing interface 400C upon a user authenticating to prevent the use of the fitness application until a fitness device is paired with the fitness application and smart television. Alternatively, the pairing interface 400C can be presented only after a user requests pairing. Alternatively, or in conjunction with the foregoing, if a user has previously paired a fitness device, the fitness application may attempt to automatically pair with the fitness device and may not display pairing interface 400C.

In the illustrated embodiment, the pairing interface 400C includes a main interface 414. As illustrated, a modal dialog 416 is presented over the main interface 414, preventing access to the contents of the main interface 414. In some embodiments, the main interface 414 can be dimmed or otherwise tinted to indicate it is unavailable while the 416// is displayed.

In an embodiment, the modal dialog 416 can include instructions 418 on how to pair a fitness device with a smart television. The specific text in instructions 418 is not limiting. The modal dialog 416 can further include controls 420 to allow the user to either begin the pairing process or terminate the pairing process. The pairing process is described in FIG. 2 and is not repeated in detail herein. Once the user selects a control to begin the pairing process, the fitness application can display the screen depicted in FIG. 4D.

In FIG. 4D, a pairing screen 400D is depicted. In the pairing screen 400D, a modal dialog 422 is displayed, indicating to the user that the smart television and fitness application are searching for devices. The modal dialog 422 can include instructions 424 to the user on how to continue the pairing process. The specific text of instructions 424 is not limiting. The modal dialog 422 can further include a control 426 to allow the user to prematurely end the pairing process. The pairing process is described in FIG. 2 and is not repeated in detail herein. In brief, during 400D, the user may operate a fitness device until the pairing process is complete. When the fitness application determines that the pairing is complete, the fitness application can display the screen depicted in FIG. 4E.

In FIG. 4E, a pairing success screen 400E is depicted. In some embodiments, the pairing success screen 400E is displayed once the fitness application successfully pairs (e.g., using a short-range wireless protocol) with the fitness device. In some embodiments, the pairing success screen 400E can include a modal dialog 428 that includes the identifier 430 of the fitness device. In some embodiments, the identifier 430 can include a serial number, model number, pre-stored picture of the device, etc. In some embodiments, the modal dialog 428 can also include a control 432, allowing the user to remove or hide the modal dialog 428 and view the main interface 414.

FIG. 4F depicts a fitness application home screen 400F. In some embodiments, the fitness application displays the application home screen 400F after the pairing process is completed. In the illustrated embodiment, the application home screen 400F can include a set of UI controls. The UI controls can include a profile icon 436 that navigates to a profile viewing or editing screen. The UI controls can include a search control 438 that allows a user to issue search queries to a remote platform for content. The UI controls can include a set of page navigation controls 440. In an embodiment, the page navigation controls 440 allow a user to view different types of content such as a home screen of recommended content (depicted in FIG. 4F), on-demand content, live content, statistics, and progress reports, etc.

The UI controls further include fitness device controls 442. As illustrated, the fitness device controls 442 can be highlighted to indicate which type of device is currently paired with the smart television (e.g., an underline on the bike icon). In this manner, a user can confirm they are using a fitness device currently paired with the smart television.

The application home screen 400F can further include a set of tiles or icons allowing the user to view an activity or set of activities. For example, the tiles or icons can include activity icons such as activity icon 446A, activity icon 446B, and activity icon 446C. In an embodiment, selecting an activity icon will cause the fitness application to display an activity detail screen (depicted in FIG. 4G). The application home screen 400F can further include a set of activity group icons, including activity group icon 448A, activity group icon 448B, activity group icon 448C, and activity group icon 448D. Upon selection of an activity group icons, multiple activity icons can be presented, or other data can be presented (e.g., challenge progress, etc.).

In some embodiments, the various activities represented by the icons or tiles can be dynamically provided to the smart television from the remote platform. For example, after the pairing process, the fitness application can provide a fitness device type to the remote platform, and the remote platform can provide only those activities that are created for the type of fitness device. In this manner, the user does not need to manually filter classes using the smart television remote control, improving the user experience and reducing the amount of bandwidth needed by the fitness application and smart television.

FIG. 4G depicts an activity detail screen 400G. In an embodiment, the fitness application can display the activity detail screen 400G upon selection of a corresponding activity icon (discussed in FIG. 4F). In some embodiments, the activity detail screen 400G can include similar controls to that of FIG. 4F (e.g., profile icon 436, search control 438, page navigation controls 440, and fitness device controls 442), the description of which is not repeated herein.

In an embodiment, the activity detail screen 400G can include an activity title and description 450 and a playlist 458 indicating the music or audio used in the audiovisual content of the audiovisual stream. The activity detail screen 400G can also include controls such as a play control 452 allowing the user to start the activity, a rating control 454 allowing the user to provide a rating of the activity, and a favorite control 456 allowing the user to save or bookmark the activity.

In response to the selection of the play control 452, the fitness application will display a pre-activity screen and, ultimately, an activity screen, as described in connection with FIG. 3 .

FIG. 4H depicts one example of an activity screen 400H. The activity screen 400H can be displayed while the user performs the activity. In some embodiments, the activity screen 400H includes a main panel 460, which displays the streaming audiovisual content (e.g., class content). The activity screen 400H can include a statistics panel 466 that displays the time elapsed, the heart rate of the user, etc. The activity screen 400H can include a leaderboard 462 that is dynamically updated based on the user's position relative to other users performing the class. These other users can comprise live users, past users (i.e., synchronized past performance of other users), or other performances of the user themselves.

In some embodiments, leaderboard 462 can include all users participating in the activity or class. In some embodiments, the leaderboard 462 can comprise a global leaderboard. In other embodiments, the leaderboard 462 can only display a subset of all users. In one embodiment, this subset can comprise a user's friends. In another embodiment, this subset can comprise a filtered subset of all users performing the activity. In an embodiment, the filtered subset can be generated based on properties of the users. In an embodiment, the properties can include skill level (e.g., categorical ranking), age, height, weight, average metrics, self-identified characteristics, etc. In some embodiments, the leaderboard 462 can only include the subset of users. In other embodiments, the leaderboard 462 can include the subset and other users, emphasizing the subset (e.g., placing in foreground, changing colors of users in the subset, etc.). In some embodiments, the UI can include controls allowing the user to toggle between different subsets (as well as a global leaderboard) thus allowing for different views of the leaderboard in the same UI.

The activity screen 400H further includes a metrics panel 464 that displays the raw or synthesized metrics of the user while the user performs the activity. The data in the metrics panel 464 can be continuously updated based on raw metrics (or synthesized metrics) received by the fitness application from the fitness device over the short-range wireless connection. Details of other types of activity screens are described herein and in commonly-owned applications bearing U.S. application Ser. Nos. 17/377,552 (filed Jul. 16, 2021) and 17/467,545 (filed Sep. 7, 2021).

FIG. 5 is a block diagram of a computing device according to some embodiments of the disclosure.

As illustrated, device 500 includes a processor or central processing unit (CPU 502) in communication with a memory 504 via a bus 514. The device also includes one or more input/output (I/O) or peripheral devices 512. Examples of peripheral devices include, but are not limited to, network interfaces, audio interfaces, display devices, keypads, mice, keyboard, touch screens, illuminators, haptic interfaces, global positioning system (GPS) receivers, cameras, or other optical, thermal, or electromagnetic sensors.

In some embodiments, the CPU 502 may comprise a general-purpose CPU. The CPU 502 may comprise a single-core or multiple-core CPU. The CPU 502 may comprise a system-on-a-chip (SoC) or a similar embedded system. In some embodiments, a GPU may be used in place of, or in combination with, a CPU 502. Memory 504 may comprise a memory system including a dynamic random-access memory (DRAM), static random-access memory (SRAM), Flash (e.g., NAND Flash), or combinations thereof. In one embodiment, bus 514 may comprise a Peripheral Component Interconnect Express (PCIe) bus. In some embodiments, bus 514 may comprise multiple busses instead of a single bus.

Memory 504 illustrates an example of computer storage media for the storage of information such as computer-readable instructions, data structures, program modules, or other data. Memory 504 can store a basic input/output system (BIOS) in read-only memory (ROM), such as ROM 508, for controlling the low-level operation of the device. The memory can also store an operating system in random-access memory (RAM) for controlling the operation of the device

Applications 510 may include computer-executable instructions which, when executed by the device, perform any of the methods (or portions of the methods) described previously in the description of the preceding Figures. In some embodiments, the software or programs implementing the method embodiments can be read from a hard disk drive (not illustrated) and temporarily stored in RAM 506 by CPU 502. CPU 502 may then read the software or data from RAM 506, process them, and store them in RAM 506 again.

The device may optionally communicate with a base station (not shown) or directly with another computing device. One or more network interfaces in peripheral devices 512 are sometimes referred to as a transceiver, transceiving device, or network interface card (NIC).

An audio interface in peripheral devices 512 produces and receives audio signals such as the sound of a human voice. For example, an audio interface may be coupled to a speaker and microphone (not shown) to enable telecommunication with others or generate an audio acknowledgment for some action. Displays in peripheral devices 512 may comprise liquid crystal display (LCD), gas plasma, light-emitting diode (LED), or any other type of display device used with a computing device. A display may also include a touch-sensitive screen arranged to receive input from an object such as a stylus or a digit from a human hand.

A keypad in peripheral devices 512 may comprise any input device arranged to receive input from a user. An illuminator in peripheral devices 512 may provide a status indication or provide light. The device can also comprise an input/output interface in peripheral devices 512 for communicating with external devices, using communication technologies, such as USB, infrared, Bluetooth™, or the like. A haptic interface in peripheral devices 512 provides tactile feedback to a user of the client device.

A GPS receiver in peripheral devices 512 can determine the physical coordinates of the device on the surface of the Earth, which typically outputs a location as latitude and longitude values. A GPS receiver can also employ other geo-positioning mechanisms, including, but not limited to, triangulation, assisted GPS (AGPS), E-OTD, CI, SAI, ETA, BSS, or the like, to further determine the physical location of the device on the surface of the Earth. In one embodiment, however, the device may communicate through other components, provide other information that may be employed to determine the physical location of the device, including, for example, a media access control (MAC) address, Internet Protocol (IP) address, or the like.

The device may include more or fewer components than those shown in FIG. 5 , depending on the deployment or usage of the device. For example, a server computing device, such as a rack-mounted server, may not include audio interfaces, displays, keypads, illuminators, haptic interfaces, GPS receivers, or cameras/sensors. Some devices may include additional components not shown, such as graphics processing unit (GPU) devices, cryptographic co-processors, artificial intelligence (AI) accelerators, or other peripheral devices.

The present disclosure has been described with reference to the accompanying drawings, which form a part hereof, and which show, by way of non-limiting illustration, certain example embodiments. Subject matter may, however, be embodied in a variety of different forms and, therefore, covered or claimed subject matter is intended to be construed as not being limited to any example embodiments set forth herein. Example embodiments are provided merely to be illustrative. Likewise, the reasonably broad scope for claimed or covered subject matter is intended. Among other things, for example, the subject matter may be embodied as methods, devices, components, or systems. Accordingly, embodiments may, for example, take the form of hardware, software, firmware, or any combination thereof (other than software per se). The following detailed description is, therefore, not intended to be taken in a limiting sense.

Throughout the specification and claims, terms may have nuanced meanings suggested or implied in context beyond an explicitly stated meaning. Likewise, the phrase “in some embodiments” as used herein does not necessarily refer to the same embodiment, and the phrase “in another embodiment” as used herein does not necessarily refer to a different embodiment. It is intended, for example, that claimed subject matter include combinations of example embodiments in whole or in part.

In general, terminology may be understood at least in part from usage in context. For example, terms such as “and,” “or,” or “and/or,” as used herein may include a variety of meanings that may depend at least in part upon the context in which such terms are used. Typically, “or” if used to associate a list, such as A, B, or C, is intended to mean A, B, and C, here used in the inclusive sense, as well as A, B, or C, here used in the exclusive sense. In addition, the term “one or more” as used herein, depending at least in part upon context, may be used to describe any feature, structure, or characteristic in a singular sense or may be used to describe combinations of features, structures, or characteristics in a plural sense. Similarly, terms, such as “a,” “an,” or “the,” again, can be understood to convey a singular usage or to convey a plural usage, depending at least in part upon context. In addition, the term “based on” may be understood as not necessarily intended to convey an exclusive set of factors and may, instead, allow for the existence of additional factors not necessarily expressly described, again, depending at least in part on context.

The present disclosure has been described with reference to block diagrams and operational illustrations of methods and devices. It is understood that each block of the block diagrams or operational illustrations, and combinations of blocks in the block diagrams or operational illustrations, can be implemented by means of analog or digital hardware and computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer to alter its function as detailed herein, a special purpose computer, ASIC, or other programmable data processing apparatus, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, implement the functions/acts specified in the block diagrams or operational block or blocks. In some alternate implementations, the functions/acts noted in the blocks can occur out of the order. For example, two blocks shown in succession can, in fact, be executed substantially concurrently, or the blocks can sometimes be executed in the reverse order, depending upon the functionality/acts involved.

For the purposes of this disclosure, a non-transitory computer-readable medium (or computer-readable storage medium/media) stores computer data, which data can include computer program code (or computer-executable instructions) that is executable by a computer, in machine-readable form. By way of example, and not limitation, a computer-readable medium may comprise computer-readable storage media for tangible or fixed storage of data or communication media for transient interpretation of code-containing signals. Computer-readable storage media, as used herein, refers to physical or tangible storage (as opposed to signals) and includes without limitation volatile and non-volatile, removable and non-removable media implemented in any method or technology for the tangible storage of information such as computer-readable instructions, data structures, program modules or other data. Computer-readable storage media includes, but is not limited to, RAM, ROM, EPROM, EEPROM, flash memory or other solid-state memory technology, CD-ROM, DVD, or other optical storage, cloud storage, magnetic cassettes, magnetic tape, magnetic disk storage, or other magnetic storage devices, or any other physical or material medium which can be used to tangibly store the desired information or data or instructions and which can be accessed by a computer or processor.

In the preceding specification, various example embodiments have been described with reference to the accompanying drawings. However, it will be evident that various modifications and changes may be made thereto, and additional embodiments may be implemented without departing from the broader scope of the disclosed embodiments as set forth in the claims that follow. The specification and drawings are accordingly to be regarded in an illustrative rather than restrictive sense. 

We claim:
 1. A method comprising: initiating, by a fitness device, a short-range wireless connection with a display device; adjusting, by the fitness device, at least one operating parameter; broadcasting, by the fitness device, an identifier of the fitness device to the display device while the at least one operating parameter is being adjusted; and establishing, by the fitness device, a connection with the display device after a user of the fitness device selects the identifier when displayed on the display device.
 2. The method of claim 1, wherein initiating the short-range wireless connection comprises initiating a Bluetooth pairing process by setting the fitness device in a discoverable.
 3. The method of claim 1, wherein initiating the short-range wireless connection comprises flashing an indicator on the fitness device.
 4. The method of claim 1, wherein the fitness device comprises an exercise bike and wherein adjusting the at least one operating parameter comprises adjusting a resistance of the exercise bike.
 5. The method of claim 1, wherein the fitness device comprises an exercise bike and wherein adjusting the at least one operating parameter comprises pedaling the exercise bike.
 6. The method of claim 1, further comprising terminating a connection process when a user stops adjusting the at least one operating parameter before establishing a connection with the display device.
 7. The method of claim 1, further comprising: receiving, at the fitness device, an indication that a fitness activity has started on the display device; and transmitting, by the fitness device, sensor data to the display device, the sensor data causing the display device to update a graphical user interface displayed on the display device.
 8. A fitness device comprising: a processor, the processor configured to: initiate a short-range wireless connection with a display device; adjust at least one operating parameter; broadcast an identifier of the fitness device to the display device while the at least one operating parameter is being adjusted; and establish a connection with the display device after a user of the fitness device selects the identifier when displayed on the display device.
 9. The fitness device of claim 8, wherein initiating the short-range wireless connection comprises initiating a Bluetooth pairing process by setting the fitness device in a discoverable.
 10. The fitness device of claim 8, further comprising an indicator, and wherein initiating the short-range wireless connection comprises flashing the indicator.
 11. The fitness device of claim 8, wherein the fitness device comprises an exercise bike and wherein adjusting the at least one operating parameter comprises adjusting a resistance of the exercise bike.
 12. The fitness device of claim 8, wherein the fitness device comprises an exercise bike and wherein adjusting the at least one operating parameter comprises pedaling the exercise bike.
 13. The fitness device of claim 8, the processor further configured for terminating a connection process when a user stops adjusting the at least one operating parameter before establishing a connection with the display device.
 14. The fitness device of claim 8, the processor further configured to: receive an indication that a fitness activity has started on the display device; and transmit sensor data to the display device, the sensor data causing the display device to update a graphical user interface displayed on the display device.
 15. A non-transitory computer-readable storage medium for tangibly storing computer program instructions capable of being executed by a computer processor, the computer program instructions defining steps of: initiating, by a fitness device, a short-range wireless connection with a display device; adjusting, by the fitness device, at least one operating parameter; broadcasting, by the fitness device, an identifier of the fitness device to the display device while the at least one operating parameter is being adjusted; and establishing, by the fitness device, a connection with the display device after a user of the fitness device selects the identifier when displayed on the display device.
 16. The non-transitory computer-readable storage medium of claim 15, wherein initiating the short-range wireless connection comprises initiating a Bluetooth pairing process by setting the fitness device in a discoverable.
 17. The non-transitory computer-readable storage medium of claim 15, wherein the fitness device comprises an exercise bike and wherein adjusting the at least one operating parameter comprises adjusting a resistance of the exercise bike.
 18. The non-transitory computer-readable storage medium of claim 15, wherein the fitness device comprises an exercise bike and wherein adjusting the at least one operating parameter comprises pedaling the exercise bike.
 19. The non-transitory computer-readable storage medium of claim 15, further comprising terminating a connection process when a user stops adjusting the at least one operating parameter before establishing a connection with the display device.
 20. The non-transitory computer-readable storage medium of claim 15, further comprising: receiving, at the fitness device, an indication that a fitness activity has started on the display device; and transmitting, by the fitness device, sensor data to the display device, the sensor data causing the display device to update a graphical user interface displayed on the display device. 